Skip to content

docs: add official-site and mirror provenance copy to codewhale.net#3440

Closed
donglovejava wants to merge 6 commits into
Hmbown:mainfrom
donglovejava:feat/v0.8.69-site-mirror-provenance
Closed

docs: add official-site and mirror provenance copy to codewhale.net#3440
donglovejava wants to merge 6 commits into
Hmbown:mainfrom
donglovejava:feat/v0.8.69-site-mirror-provenance

Conversation

@donglovejava

Copy link
Copy Markdown
Contributor

Summary

This PR adds explicit provenance (source-of-truth) documentation across the official site and mirror docs, making it clear that GitHub is the sole canonical source and mirrors are accelerators only.

Changes

1. Footer provenance section (web/components/footer.tsx)

  • Replaced the zh-only mirror list with a provenance section visible on all locales
  • Adds a clear statement: GitHub is the sole canonical source, mirrors are China-network accelerators
  • Highlights the official GitHub link with ★ and font-semibold
  • Includes SHA256 manifest verification mention

2. Install page source labeling (web/app/[locale]/install/page.tsx)

  • Added <strong>官方源 / Official source</strong> label to the China network install section
  • Makes it explicit that GitHub Releases is the primary, Tuna/npmmirror are secondary

3. CNB mirror provenance (docs/CNB_MIRROR.md)

  • Added a new Provenance section at the top of the document
  • States GitHub is the sole canonical source
  • Explains how to verify mirror integrity via SHA256 checksums

Impact

  • Users can instantly distinguish official sources from mirrors
  • Reduces confusion about which source to trust
  • Provides verification path for mirror integrity
  • Provenance copy is bilingual (zh/en) and locale-aware

Generated with Claude Code

The sidebar was only showing when terminal width >= 100 columns, which is too restrictive for many terminal setups. Reduced the minimum width to 60 columns to make the sidebar visible in more common terminal configurations.

This fixes the issue where the sidebar would not appear in v0.8.62+ when using typical terminal sizes that are narrower than 100 columns.
Nightly builds:
- Add artifact existence check to skip redundant builds for the same commit
- Add build retry logic (up to 3 attempts) for transient failures
- Add nightly-complete summary job for branch protection rules
- Improve concurrency group to use ref_name instead of full ref

Auto-tag idempotency:
- Add semver validation for workspace version
- Add annotated tags with release metadata
- Add push retry logic with exponential backoff
- Fail fast if version consistency check fails
- Add concurrency control to prevent race conditions

Addresses v0.8.64 reliability concerns for nightly builds and auto-tagging.
Update SECURITY.md email address from the legacy deepseek-tui.com domain
to codewhale.com to match the project rebranding.

Addresses v0.8.64 security hardening requirements.
- Add visual separator between approve (0-1) and deny/abort (2-3) groups
- Render selected option as a solid button row with background strip
- Add 'EXECUTE' indicator on the selected row for clear action feedback
- Maintain keyboard shortcut emphasis with BOLD modifier

Improves UX by making the decision surface read as two distinct choice
clusters rather than a flat list, and gives the selected option a clear
button-like appearance.
- Footer: add provenance section visible on all locales, distinguishing
  GitHub as the sole canonical source from mirror accelerators
- Install page: add 'Official source' label to the China network section
  so users know GitHub Releases is the primary, mirrors are secondary
- CNB_MIRROR.md: add Provenance section explaining GitHub is canonical
  and how to verify mirror integrity via SHA256 manifests

Addresses v0.8.69 documentation and UX requirements.
@donglovejava donglovejava requested a review from Hmbown as a code owner June 23, 2026 03:35

@greptile-apps greptile-apps Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Your free trial has ended. If you'd like to continue receiving code reviews, you can add a payment method here.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces several enhancements and fixes to the CodeWhale TUI and website, including adding new interactive shell execution tools to the default tool catalog, reducing the minimum sidebar width, and improving the visual styling of the approval widget with locale-specific separators and selection indicators. It also adds a 'Provenance' section to the documentation and website footer to clarify that GitHub is the sole canonical source. The review feedback suggests updating the security email in SECURITY.md to use the canonical codewhale.net domain instead of codewhale.com for consistency.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

Comment thread SECURITY.md

- **GitHub private advisory**: [github.com/Hmbown/CodeWhale/security/advisories/new](https://github.com/Hmbown/CodeWhale/security/advisories/new)
- **Email**: [security@deepseek-tui.com](mailto:security@deepseek-tui.com) — include `[SECURITY]` in the subject line
- **Email**: [security@codewhale.com](mailto:security@codewhale.com) — include `[SECURITY]` in the subject line

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

security-medium medium

The security email domain here is configured as security@codewhale.com, but the canonical domain for the project is codewhale.net (as seen in the footer of the website and other documentation). Please update this to security@codewhale.net to ensure consistency and prevent potential delivery issues.

Suggested change
- **Email**: [security@codewhale.com](mailto:security@codewhale.com) — include `[SECURITY]` in the subject line
- **Email**: [security@codewhale.net](mailto:security@codewhale.net) — include `[SECURITY]` in the subject line

@Hmbown

Hmbown commented Jun 23, 2026

Copy link
Copy Markdown
Owner

This is so helpful - thank you so much!!

@Hmbown

Hmbown commented Jun 23, 2026

Copy link
Copy Markdown
Owner

Thanks @donglovejava. The provenance copy itself is welcomedocs/CNB_MIRROR.md, web/components/footer.tsx, and web/app/[locale]/install/page.tsx are the three files worth landing. But this branch bundles the same unrelated/problematic changes as #3437 and is labeled v0.8.69, so it's out of the v0.8.65 release scope and can't merge as-is.

For a clean, mergeable PR (target the v0.8.69 lane): open a fresh branch off current main with only those three provenance files, and drop:

  • SECURITY.md — it regresses the security contact from security@codewhale.net (current on main) to @codewhale.com. Must not land.
  • codewhale stray submodule gitlink, fix_engine.py, *.patch, and the 7 pr-body-*.md scratch files.
  • .github/workflows/auto-tag.yml / nightly.yml (release-tagging — needs Hunter's explicit approval, separate PR).
  • tool_catalog.rs, tui/ui.rs, widgets/mod.rs — stale-base hunks already superseded on main.

Once it's just the provenance copy on a clean base I'm happy to review and credit it. Appreciate the work on the site provenance.

Hmbown added a commit that referenced this pull request Jun 23, 2026
State plainly that GitHub is the sole canonical source across the site:
- footer: a Provenance section shown on all locales (was a zh-only mirror
  list), starring the official GitHub link and noting that mirrors are
  China-network accelerators (link labels localized for EN/ZH)
- install: an "Official source" label on the Mainland China network section
- docs/CNB_MIRROR.md: a Provenance section that accurately describes the
  CNB-built SHA256 manifest, with a verification path

Harvested from PR #3440 by @donglovejava. Dropped that branch's unrelated
churn (stray working files, workflow edits, and a SECURITY.md contact change
that regresses the current address) and preserved the current Gitee URL.

Co-authored-by: donglovejava <211940267+donglovejava@users.noreply.github.com>
Claude-Session: https://claude.ai/code/session_01991fnUqBbWSgiUFw33L8XX
Hmbown added a commit that referenced this pull request Jun 24, 2026
…B) (#3514)

State plainly that GitHub is the sole canonical source across the site:
- footer: a Provenance section shown on all locales (was a zh-only mirror
  list), starring the official GitHub link and noting that mirrors are
  China-network accelerators (link labels localized for EN/ZH)
- install: an "Official source" label on the Mainland China network section
- docs/CNB_MIRROR.md: a Provenance section that accurately describes the
  CNB-built SHA256 manifest, with a verification path

Harvested from PR #3440 by @donglovejava. Dropped that branch's unrelated
churn (stray working files, workflow edits, and a SECURITY.md contact change
that regresses the current address) and preserved the current Gitee URL.


Claude-Session: https://claude.ai/code/session_01991fnUqBbWSgiUFw33L8XX

Co-authored-by: donglovejava <211940267+donglovejava@users.noreply.github.com>
@github-actions

Copy link
Copy Markdown

Thanks @donglovejava — your contribution landed in 76e09ed10d05 on main:

docs(web): add provenance / source-of-truth copy (footer, install, CNB) (#3514)

Closing this PR now that the code is on main. Credit lives in the commit message and (where applicable) the CHANGELOG.md entry for the next release. Apologies for not closing this at the time of the merge — the auto-close workflow is new in v0.8.31.

If you want to land more work and would prefer your future PRs merge cleanly without a harvest step, the CONTRIBUTING.md doc has a short note on what makes a contribution mergeable as-is.

@github-actions github-actions Bot closed this Jun 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants